home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / answrbok / 5_2.lha / 5_2 / 5_2.c next >
Text File  |  1993-08-08  |  1KB  |  58 lines

  1. * Copyright (c) 1990 by AT&T Bell Telephone Laboratories, Incorporated. */
  2. * The C++ Answer Book */
  3. * Tony Hansen */
  4. * All rights reserved. */
  5. include <stream.h>
  6. include "5_2a.h"    // class tnode
  7. /#include "5_2a1.c"    // tnode::tnode()
  8. /#include "5_2a2.c"    // tnode::~tnode()
  9. include "5_2b.h"    // class tree
  10. /#include "5_2b1.c"    // tree::addnode()
  11. /#include "5_2b2.c"    // tree::findnode()
  12. /#include "5_2b3.c"    // tree::delnode() 
  13. /#include "5_2b4.c"    // tree::orderwalk()
  14.  
  15. har *x[] =
  16.  
  17.    "hello", "there", "this", "is", "a", "test", "of", "lists",
  18.    "the", "quick", "brown", "fox", "jumped", "over", "the", "lazy", "black", "dog", 0
  19. ;
  20.  
  21. tatic void prnode(tnode *tn, int depth)
  22.  
  23.    cout << form("%*s", depth*4, " ") << tn->tword << "\n";
  24.  
  25.  
  26. ain()
  27.  
  28.    tree t;
  29.  
  30.    for (char **xp = x; *xp; xp++)
  31. t.addnode(*xp);
  32.  
  33.    cout << "forward\n";
  34.    cout << "preorderwalk:\n";
  35.    t.preorderwalk(prnode);
  36.    cout << "inorderwalk:\n";
  37.    t.inorderwalk(prnode);
  38.    cout << "postorderwalk:\n";
  39.    t.postorderwalk(prnode);
  40.    cout << "doubleorderwalk:\n";
  41.    t.doubleorderwalk(prnode);
  42.    cout << "tripleorderwalk:\n";
  43.    t.tripleorderwalk(prnode);
  44.  
  45.    cout << "reverse\n";
  46.    cout << "preorderwalk:\n";
  47.    t.preorderwalk(prnode, 1);
  48.    cout << "inorderwalk:\n";
  49.    t.inorderwalk(prnode, 1);
  50.    cout << "postorderwalk:\n";
  51.    t.postorderwalk(prnode, 1);
  52.    cout << "doubleorderwalk:\n";
  53.    t.doubleorderwalk(prnode, 1);
  54.    cout << "tripleorderwalk:\n";
  55.    t.tripleorderwalk(prnode, 1);
  56.    return 0;
  57.  
  58.